Mason's rule

Mason's gain formula (MGF) is a method for finding the transfer function of a linear signal-flow graph (SFG). The formula was derived by Samuel Jefferson Mason[1] and is named after its discoverer. MGF is an alternate method to finding the transfer function algebraically by labeling each signal, writing down the equation for how that signal depends on other signals, and then solving the multiple equations for the output signal in terms of the input signal. MGF provides a step by step method to obtain the transfer function from a SFG. Often, MGF can be determined by inspection of the SFG. The method can easily handle SFGs with many variables and loops including loops with inner loops. MGF comes up often in the context of control systems and digital filters because control systems and digital filters are often represented by SFGs.

Contents

Formula

The gain formula is as follows:

G = \frac{y_\text{out}}{y_\text{in}} = \frac{ \sum_{k=1}^N  {G_k \Delta _k} }{ \Delta\ }
\Delta = 1 - \sum L_i %2B \sum L_iL_j- \sum L_iL_jL_k %2B \cdots %2B (-1)^m \sum \cdots %2B\cdots

where:

Procedure

To use this technique,

  1. Make a list of all forward paths, and their gains, and label these Gk.
  2. Make a list of all the loops and their gains, and label these Li (for i loops). Make a list of all pairs of non-touching loops, and the products of their gains (LiLj). Make a list of all pairwise non-touching loops taken three at a time (LiLjLk), then four at a time, and so forth, until there are no more.
  3. Compute the determinant Δ and cofactors Δk.
  4. Apply the formula.

Examples

Circuit containing two-port

The transfer function from Vin to V2 is desired.

There is only one forward path:

  • Vin to V1 to I2 to V2 with gain  G_1 = -y_{21} R_L \,

There are three loops:

  • V1 to I1 to V1 with gain  L_1 = -R_{in} y_{11} \,
  • V2 to I2 to V2 with gain  L_2 = -R_L y_{22} \,
  • V1 to I2 to V2 to I1 to V1 with gain  L_3 = y_{21} R_L y_{12} R_{in} \,
 \Delta = 1 - ( L_1 %2B L_2 %2B L_3 ) %2B ( L_1 L_2 ) \, note: L1 and L2 do not touch each other whereas L3 touches both of the other loops.
 \Delta_1 = 1 \, note: the forward path touches all the loops so all that is left is 1.
 G = \frac { G_1 \Delta_1 } { \Delta }   =  \frac { -y_{21} R_L } {1 %2B R_{in}y_{11} %2B R_L y_{22} - y_{21} R_L y_{12} R_{in} %2B R_{in}y_{11} R_L y_{22} }    \,


Digital IIR biquad filter

Digital filters are often diagramed as signal flow graphs.

There are two loops
  •  L_1 = -a_1 Z^{-1} \,
  •  L_2 = -a_2 Z^{-2} \,
 \Delta = 1 - ( L_1 %2B L_2 ) \, Note, the two loops touch so there is no term for their product.
There are three forward paths
  •  G_0 = b_0  \,
  •  G_1 = b_1 Z^{-1} \,
  •  G_2 = b_2 Z^{-2} \,
All the forward paths touch all the loops so  \Delta_0 = \Delta_1 = \Delta_2 = 1  \,
 G = \frac { G_0 \Delta_0 %2BG_1 \Delta_1  %2B G_2 \Delta_2  } {\Delta} \,
 G = \frac { b_0 %2B b_1 Z^{-1} %2B b_2 Z^{-2} } {1 %2Ba_1 Z^{-1} %2B a_2 Z^{-2} } \,


Servo

The signal flow graph has six loops. They are:

  •  L_0 = -  \frac {\beta} {sM} \,
  •  L_1 = \frac{-1} {sL_M( R_M %2B R_S)} \,
  •  L_2 = \, \frac {-G_M K_M} {s^2 L_M M}
  •  L_3 = \frac {-K_C R_S} {sL_M} \,
  •  L_4 = \frac {-K_V K_C K_M G_T} {s^2 L_M M} \,
  •  L_5 = \frac {-K_P K_V K_C K_M } {s^3 L_M M} \,
 \Delta = 1 - (L_0%2BL_1%2BL_2%2BL_3%2BL_4%2BL_5) %2B (L_0 L_1 %2B L_0 L_3)\,

There is one forward path:

  •  g_0 = \frac {-K_P K_V K_C K_M } {s^3 L_M M} \,

The forward path touches all the loops therefore the co-factor  \Delta_0 = 1

And the gain from input to output is   \frac {\theta_L} {\theta_C} = \frac {g_0 \Delta_0} {\Delta} \,


Equivalent matrix form

Mason's rule can be stated in a simple matrix form. Assume \mathbf{T} is the transient matrix of the graph where t_{nm} = \left[\mathbf{T}\right]_{nm} is the sum transmittance of branches from node m toward node n. Then, the gain from node m to node n of the graph is equal to u_{nm} = \left[\mathbf{U}\right]_{nm}, where

 \mathbf{U} = \left ( \mathbf{I} - \mathbf{T} \right ) ^ {-1} ,

and \mathbf{I} is the identity matrix.

Mason's Rule is also particularly useful for deriving the z-domain transfer function of discrete networks that have inner feedback loops embedded within outer feedback loops (nested loops). If the discrete network can be drawn as a signal flow graph, then the application of Mason's Rule will give that network's z-domain H(z) transfer function.

Notes

  1. ^ Mason, Samuel J. (July 1956). "Feedback Theory - Further Properties of Signal Flow Graphs". Proceedings of the IRE: 920–926. 

References

A mason rule example